<!DOCTYPE html>
<html lang="en-US">
<head>
	<title>SlideScript API: Networking ~ The Lazy Language</title>
	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
	<meta name="viewport" content="width=device-width, initial-scale=1" />
	<meta name="description" content="SlideScript API and Documentation section - SlideScript is a micro stripting language with the intent to give the world an effective shell like experience with the ability to use a sloppy syntax! SlideScript can do simple every day shell tasks like manipulating and working with files, and directories, piping, variable support, and backquoting, with a bit of spice like: built-in md5, and encoder / decoder, webserver, networking functions, tar and compression functions, PLUS MORE!" />
	<link href="../style.css" rel="stylesheet" type="text/css" />
</head>
<body>
    <table><tr><td>
    <div class="header">
        <img src="../sslogo.png" class="logoimg" title="SlideScript logo" alt="SlideScript" />
    </div>
    </td></tr><tr><td>
	<div class="menu"><!--
        --><a href="../index.html">Home</a><!--
        --><a href="index.html">Documentation</a><!--
		--><a href="https://notabug.org/Pentium44/slidescript">Git</a><!--
	--></div>
    </td></tr></table>
	
	<div class="container">
	<p>There are various functions within SlideScript in terms of networking availability.
    The micro web server is stable and 100% usable, and also incorporated: netlisten and nettoss.
    </p>

    <h2>SS:HTTP</h2>
	<p>
    SlideScript has, for convenience and ease of use at the prompt level,
    a built-in web server. The function is known as nethttp.<br />
    The function has the ability to fork into the background as an
    operational daemon until the SlideScript session is ended.
    When not forked, the web server runs in the foreground and
    will inform when a connection has been made and requests a file
    from the webserver.
<pre><code>
#!/bin/usr/slidescript
# Starting the built-in web server
# run in background!
nethttp "8080" "1"

chdir "docs"

# run in foreground!
nethttp "8081" "0"
</code></pre>
    </p>

    <h2>Flat file listening server, and file tossing.</h2>
    <p>
    Amazingly convenient feature for passing raw text from machine
    to machine, and these functions are known as: netlisten and nettoss.
    <br />
    <b>Listening server:</b>
<pre><code>
#!/usr/bin/slidescript
# Start listening server on port "7000"
netlisten "7000"
</code></pre>
    Incoming connections send data using the nettoss function and
    data is saved into a flat file in the working directory as a 
    random filename based on time, srand, and rand in C.<br />
    <b>Tossing text / files to listening server:</b>
<pre><code>
### Sending text / files via interactive shell ###

ss:prompt: nettoss "127.0.0.1" "7000" "Hello!"
ss:client:connected to 127.0.0.1:7000
ss:prompt: 

### Listening socket ###

ss:server:listening on '7000'
ss:server:connection from 127.0.0.1
ss:server:client buffer saved as 'wQiHVlWxD595XZlk'
</code></pre>
    </p>

	<h3>IRC server</h3>
	<p>
	Still need help? Want to report a bug? Join us!<br /><br />
	IP/Port: cddo.cc/1337<br />
	Main hang channel: <b>#theroot</b><br />
	FreeBox channel: <b>#freebox</b><br />
	FreonLinux channel: <b>#freonlinux</b>
    </p>

	</div>	

	<div class="footer">
		&copy; Chris Dorman, 2021 <a href="https://creativecommons.org/licenses/by-nc-sa/4.0/legalcode">CC BY-NC-SA 4.0</a> - Software GPLv2 licensed<br />
		<p>
			Powered by:<br />
			<a href="https://freedns.afraid.org/">
				<img style="width:100px;" src="https://freedns.afraid.org/images/freedns_crop.png" />
			</a>
			<a href="https://letsencrypt.org/">
				<img style="width: 100px;" src="https://letsencrypt.org/images/le-logo-wide.png" />
			</a>
			<a href="http://jigsaw.w3.org/css-validator/check/referer">
				<img style="border:0;width:80px" src="http://jigsaw.w3.org/css-validator/images/vcss-blue" alt="Valid CSS!" />
			</a>
		</p>
	</div>
</body>
</html>
